package com.git_taoxian.test3;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class Test {
    public static void main(String[] args) {
//         定义一个：键Integer，值String类型的HashMap集合
        Map<Integer, String> hashMap = new HashMap<>();

//         存储以下数据：”张三” , “李四” , “ 王五”。（put）
        hashMap.put(1,"张三");
        hashMap.put(2,"李四");
        hashMap.put(3,"王五");

//         打印集合大小；
        System.out.println("集合的长度："+hashMap.size());

//         使用“键找值”的方式遍历集合，打印键和值；(keySet)
        Set<Integer> integers = hashMap.keySet();//集合对象调用keySet方法 返回一个Set集合对象
        for (Integer key : integers) {//增强for循环遍历找到每一个键
            String value = hashMap.get(key);//通过建找到对应的值
            System.out.println(key+","+value);//打印输出键与值
        }
        System.out.println("-------------");

//         使用“键值对”的方式遍历集合，打印键和值；(entrySet)
        Set<Map.Entry<Integer, String>> entries = hashMap.entrySet();//调用集合中的entrySet方法生成键值对类型的Set集合对象
        for (Map.Entry<Integer, String> entry : entries) {
            Integer key = entry.getKey();
            String value = entry.getValue();
            System.out.println(key+","+value);
        }

//         获取键为1的值，并打印(get)
        System.out.println(hashMap.get(1));

//         获取键为10的值，并打印
        System.out.println(hashMap.get(10));//打印结果为空

//         判断集合中是否有键：10（containsKey）
        System.out.println(hashMap.containsKey(10));//打印结果为false 表示不存在键为10的元素

//         删除键为1的键值对，删除完毕打印集合
        hashMap.remove(1);
        System.out.println(hashMap);

    }
}
